package com.blb.zy_community.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 业主 
 * </p>
 *
 * @author 二组
 * @since 2023-06-18
 */
@TableName("zy_owner")
public class ZyOwner implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 业主id
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @TableId(type = IdType.AUTO)
    private Long ownerId;

    /**
     * 昵称
     */
    private String ownerNickname;

    /**
     * 真实姓名
     */
    private String ownerRealName;

    /**
     * 性别unknow未知male男female女
     */
    private String ownerGender;

    /**
     * 年龄
     */
    private Integer ownerAge;

    /**
     * 身份证号码
     */
    private String ownerIdCard;

    /**
     * 手机号码
     */
    private String ownerPhoneNumber;

    /**
     * openid
     */
    private String ownerOpenId;

    /**
     * 微信号
     */
    private String ownerWechatId;

    /**
     * qq号码
     */
    private String ownerQqNumber;

    /**
     * 出生日期
     */
    private LocalDate ownerBirthday;

    /**
     * 头像
     */
    private String ownerPortrait;

    /**
     * 个性签名
     */
    private String ownerSignature;

    /**
     * 禁用状态enable启用-disable禁用
     */
    private String ownerStatus;

    /**
     * 注册方式（weChat微信-app-web）
     */
    private String ownerLogonMode;

    /**
     * 业主类型
     */
    private String ownerType;

    /**
     * 密码
     */
    private String ownerPassword;

    /**
     * 创建者
     */
    private String createBy;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新者
     */
    private String updateBy;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 备注
     */
    private String remark;

    /**
     * 小区名称
     * @return
     */
    @TableField(exist = false)
    private String communityName;

    /**
     *楼栋名称
     */
    @TableField(exist = false)
    private String buildingName;

    /**
     * 单元名称
     */
    @TableField(exist = false)
    private String unitName;

    /**
     * 房间名称
     */
    @TableField(exist = false)
    private String roomName;

    /**
     * 业主房间表的Id
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @TableField(exist = false)
    private Long ownerRoomId;


    public Long getOwnerId() {
        return ownerId;
    }

    public void setOwnerId(Long ownerId) {
        this.ownerId = ownerId;
    }

    public String getOwnerNickname() {
        return ownerNickname;
    }

    public void setOwnerNickname(String ownerNickname) {
        this.ownerNickname = ownerNickname;
    }

    public String getOwnerRealName() {
        return ownerRealName;
    }

    public void setOwnerRealName(String ownerRealName) {
        this.ownerRealName = ownerRealName;
    }

    public String getOwnerGender() {
        return ownerGender;
    }

    public void setOwnerGender(String ownerGender) {
        this.ownerGender = ownerGender;
    }

    public Integer getOwnerAge() {
        return ownerAge;
    }

    public void setOwnerAge(Integer ownerAge) {
        this.ownerAge = ownerAge;
    }

    public String getOwnerIdCard() {
        return ownerIdCard;
    }

    public void setOwnerIdCard(String ownerIdCard) {
        this.ownerIdCard = ownerIdCard;
    }

    public String getOwnerPhoneNumber() {
        return ownerPhoneNumber;
    }

    public void setOwnerPhoneNumber(String ownerPhoneNumber) {
        this.ownerPhoneNumber = ownerPhoneNumber;
    }

    public String getOwnerOpenId() {
        return ownerOpenId;
    }

    public void setOwnerOpenId(String ownerOpenId) {
        this.ownerOpenId = ownerOpenId;
    }

    public String getOwnerWechatId() {
        return ownerWechatId;
    }

    public void setOwnerWechatId(String ownerWechatId) {
        this.ownerWechatId = ownerWechatId;
    }

    public String getOwnerQqNumber() {
        return ownerQqNumber;
    }

    public void setOwnerQqNumber(String ownerQqNumber) {
        this.ownerQqNumber = ownerQqNumber;
    }

    public LocalDate getOwnerBirthday() {
        return ownerBirthday;
    }

    public void setOwnerBirthday(LocalDate ownerBirthday) {
        this.ownerBirthday = ownerBirthday;
    }

    public String getOwnerPortrait() {
        return ownerPortrait;
    }

    public void setOwnerPortrait(String ownerPortrait) {
        this.ownerPortrait = ownerPortrait;
    }

    public String getOwnerSignature() {
        return ownerSignature;
    }

    public void setOwnerSignature(String ownerSignature) {
        this.ownerSignature = ownerSignature;
    }

    public String getOwnerStatus() {
        return ownerStatus;
    }

    public void setOwnerStatus(String ownerStatus) {
        this.ownerStatus = ownerStatus;
    }

    public String getOwnerLogonMode() {
        return ownerLogonMode;
    }

    public void setOwnerLogonMode(String ownerLogonMode) {
        this.ownerLogonMode = ownerLogonMode;
    }

    public String getOwnerType() {
        return ownerType;
    }

    public void setOwnerType(String ownerType) {
        this.ownerType = ownerType;
    }

    public String getOwnerPassword() {
        return ownerPassword;
    }

    public void setOwnerPassword(String ownerPassword) {
        this.ownerPassword = ownerPassword;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    public LocalDateTime getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(LocalDateTime updateTime) {
        this.updateTime = updateTime;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getCommunityName() {
        return communityName;
    }

    public void setCommunityName(String communityName) {
        this.communityName = communityName;
    }

    public String getBuildingName() {
        return buildingName;
    }

    public void setBuildingName(String buildingName) {
        this.buildingName = buildingName;
    }

    public String getUnitName() {
        return unitName;
    }

    public void setUnitName(String unitName) {
        this.unitName = unitName;
    }

    public String getRoomName() {
        return roomName;
    }

    public void setRoomName(String roomName) {
        this.roomName = roomName;
    }

    public Long getOwnerRoomId() {
        return ownerRoomId;
    }

    public void setOwnerRoomId(Long ownerRoomId) {
        this.ownerRoomId = ownerRoomId;
    }

    @Override
    public String toString() {
        return "ZyOwner{" +
                "ownerId=" + ownerId +
                ", ownerNickname='" + ownerNickname + '\'' +
                ", ownerRealName='" + ownerRealName + '\'' +
                ", ownerGender='" + ownerGender + '\'' +
                ", ownerAge=" + ownerAge +
                ", ownerIdCard='" + ownerIdCard + '\'' +
                ", ownerPhoneNumber='" + ownerPhoneNumber + '\'' +
                ", ownerOpenId='" + ownerOpenId + '\'' +
                ", ownerWechatId='" + ownerWechatId + '\'' +
                ", ownerQqNumber='" + ownerQqNumber + '\'' +
                ", ownerBirthday=" + ownerBirthday +
                ", ownerPortrait='" + ownerPortrait + '\'' +
                ", ownerSignature='" + ownerSignature + '\'' +
                ", ownerStatus='" + ownerStatus + '\'' +
                ", ownerLogonMode='" + ownerLogonMode + '\'' +
                ", ownerType='" + ownerType + '\'' +
                ", ownerPassword='" + ownerPassword + '\'' +
                ", createBy='" + createBy + '\'' +
                ", createTime=" + createTime +
                ", updateBy='" + updateBy + '\'' +
                ", updateTime=" + updateTime +
                ", remark='" + remark + '\'' +
                ", communityName='" + communityName + '\'' +
                ", buildingName='" + buildingName + '\'' +
                ", unitName='" + unitName + '\'' +
                ", roomName='" + roomName + '\'' +
                ", ownerRoomId=" + ownerRoomId +
                '}';
    }
}
